import 'package:flutter_cache_manager/flutter_cache_manager.dart';

// 全局自定义缓存管理器（单例模式，确保全局使用同一实例）
class CustomImageCacheManager {
  // 私有构造函数，禁止外部直接创建
  CustomImageCacheManager._();

  // 静态单例实例
  static final CustomImageCacheManager _instance = CustomImageCacheManager._();

  // 对外暴露的单例 getter
  static CustomImageCacheManager get instance => _instance;

  // 自定义缓存配置（优化以解决花屏和割裂问题）
  final CacheManager cacheManager = CacheManager(
    Config(
      'customCacheKey', // 必须与CachedNetworkImage中的key一致
      stalePeriod: const Duration(days: 7), // 缓存有效期7天
      fileService: HttpFileService(
        httpClient: null, // 使用默认HTTP客户端
      ),
      repo: JsonCacheInfoRepository(databaseName: 'custom_image_cache.db'),
    ),
  );
}
